<?
	$ncUsuario = $this->oUserSession->getUser();

	if ( $ncUsuario )
		$this->aDatos[$cTemplateId][Row] = $this->oDatabase->getArray("SELECT * FROM gtUsuario WHERE ncUsuario = $ncUsuario");

	global $aParameter;
	extract($aParameter);		
	
	$this->aDatos[$cTemplateId][aModosDefault] = 1;
	switch ( $fn )
	{
		case 'registrar': 
			if ( $_SESSION['captcha'] != $cCaptcha)
			{
				echo  "[mensaje_general]". mostrar_termino(LBL_Mensaje_codigo ) ."[/mensaje_general]";
				exit();
			}
			if ( comprobar_email($cEmail ) == 0 )
			{
				echo  "[mensaje_email]". mostrar_termino(LBL_VerifyEmail ) ."[/mensaje_email]";
				exit();
			}
			if ( $cClave != $cConfirmaClave )
			{
				echo  "[mensaje_clave]". mostrar_termino(LBL_VerifyClave ) ."[/mensaje_clave]";
				exit();
			} elseif ( $cClave != '')
			{
				$cClave   = hashPassword($cClave);
			}
			$oFecha = new DateObject($dNacimiento, 'es', 'dd/mm/yyyy' );
			$ncUsuario = $this->oDatabase->nextKey( 'gtUsuario', 'ncUsuario' );
			$this->oDatabase->insert('gtUsuario'
								,'cNombre', $cNombre
								,'cApellido', $cApellido
								,'cEmail', $cEmail
								,'cAlias', $cAlias
								,'dNacimiento', $oFecha->getValue('yyyy-mm-dd')
								,'cDireccion', $cDireccion
								,'ncGenero', $ncGenero
								,'ncPais', $ncPais
								,'cClave', $cClave
								,'ncUsuario', $ncUsuario );

				list( $cAsunto, $cMensaje ) = $this->oDatabase->getArray('SELECT cdContenido, cDescripcion FROM gtContenido WHERE ncContenido = 1466');
				$cMensaje = extractLanguage($cMensaje, $this->getLanguage() ) ;
				$cAsunto = extractLanguage($cAsunto, $this->getLanguage() ) ;
				$cAsunto = str_replace( '{nombre}', $cNombre, $cAsunto ) ;
				$cAsunto = str_replace( '{apellido}', $cApellido, $cAsunto ) ;
				$cAsunto = str_replace( '{ncUsuario}', $aDatos[ncUsuario] , $cAsunto ) ;
				$cAsunto = str_replace( '{clave}', $aDatos[cClave], $cAsunto ) ;

				$cPara = $cNombre .' '. $cApellido;
				$cParaMail = $cEmail;
				enviarEmail( $cParaMail, $cPara , $cMensaje , $cAsunto);
				echo ("[javascript]document.location.href=\"?ac=contenido&mo=portal&ncContenido=1496\";[/javascript]");
				exit();
		case 'clave': 
			break;
			if ( $cClave != $cConfirmaClave )
			{
				echo  "[mensaje_clave]" . mostrar_termino(LBL_VerifyClave ) ."[/mensaje_clave]";
				exit();
			} elseif ( $cClave != '')
			{
				$cClave   = hashPassword($cClave);
				$this->oDatabase->update('gtUsuario'
						,'cClave', $cClave
						,'WHERE'
						,'ncUsuario', $ncUsuario
						);
			}
		case 'modificar': 
			if ( comprobar_email($cEmail ) == 0 )
			{
				echo  "[mensaje_clave]". mostrar_termino(LBL_VerifyEmail ) ."[/mensaje_clave]";
				exit();
			}
			$oFecha = new DateObject($dNacimiento, 'es', 'dd/mm/yyyy' );
			$this->oDatabase->update('gtUsuario'
								,'cNombre', $cNombre
								,'cApellido', $cApellido
								,'cEmail', $cEmail
								,'cAlias', $cAlias
								,'dNacimiento', $oFecha->getValue('yyyy-mm-dd')
								,'cDireccion', $cDireccion
								,'ncGenero', $ncGenero
								,'ncPais', $ncPais
								,'WHERE'
								,'ncUsuario', $ncUsuario
								);
				echo  "[mensaje_general]Los datos fueron actualizados correctamente[/mensaje_general]";
				exit();
			break;
			
		case 'verifyEmail':
			if ( comprobar_email($cEmail ) == 0 )
			{
				exit( mostrar_termino(LBL_VerifyEmail ) );
				return false;
			}
			exit(" ");
			break;
			
	    case 'verifyClave':
			$cClave= getParam('cClave');
			$cConfirmaClave = getParam('cConfirmaClave');
			if ( $cConfirmaClave && $cClave && $cClave != $cConfirmaClave  )
			{
				exit( mostrar_termino(LBL_VerifyClave ) );
				return false;
			}
			exit( " ");
			break;

	}
?>